/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is Forte for Java, Community Edition. The Initial * Developer of the Original Code is Sun Microsystems, Inc. Portions * Copyright 1997-2000 Sun Microsystems, Inc. All Rights Reserved. */ package org.netbeans.modules.vcs.cmdline.commands; import org.netbeans.modules.vcs.cmdline.*; import org.netbeans.modules.vcs.util.*; import org.netbeans.modules.vcs.cmdline.exec.*; import java.util.*; import java.io.*; import java.net.*; import javax.swing.*; import javax.swing.text.*; import org.openide.util.HelpCtx; /** * * @author Martin Entlicher * @version */ public class CvsDiffFrame extends javax.swing.JFrame { private Debug E=new Debug("CvsDiffFrame",true); // NOI18N private Debug D=E; private CvsDiff diff = null; static final long serialVersionUID =3683458237532937983L; /** Creates new form CvsDiffFrame */ public CvsDiffFrame(CvsDiff diff) { this.diff = diff; initComponents (); setTitle(org.openide.util.NbBundle.getBundle(CvsDiffFrame.class).getString("CvsDiffFrame.title")); //SwingUtilities.invokeLater(new Runnable () { //public void run () { //initScrollBars(); //pack (); //} //}); initScrollBars(); pack (); HelpCtx.setHelpIDString (getRootPane (), CvsDiffFrame.class.getName ()); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the FormEditor. */ private void initComponents () {//GEN-BEGIN:initComponents commandPanel = new javax.swing.JPanel (); editorPanel = new javax.swing.JPanel (); jPanel1 = new javax.swing.JPanel (); editorPanel1 = new javax.swing.JPanel (); jScrollBar1 = new javax.swing.JScrollBar (); fileLabel1 = new javax.swing.JLabel (); jPanel2 = new javax.swing.JPanel (); editorPanel2 = new javax.swing.JPanel (); jScrollBar2 = new javax.swing.JScrollBar (); fileLabel2 = new javax.swing.JLabel (); jPanel3 = new javax.swing.JPanel (); jScrollBar3 = new javax.swing.JScrollBar (); fillSpaceLabel = new javax.swing.JLabel (); labelPanel = new javax.swing.JPanel (); fileLabelSeparator = new javax.swing.JSeparator (); buttonPanel = new javax.swing.JPanel (); closeButton = new javax.swing.JButton (); getContentPane ().setLayout (new java.awt.GridBagLayout ()); java.awt.GridBagConstraints gridBagConstraints1; addWindowListener (new java.awt.event.WindowAdapter () { public void windowClosing (java.awt.event.WindowEvent evt) { exitForm (evt); } } ); gridBagConstraints1 = new java.awt.GridBagConstraints (); gridBagConstraints1.gridy = 0; getContentPane ().add (commandPanel, gridBagConstraints1); editorPanel.setLayout (new java.awt.GridBagLayout ()); java.awt.GridBagConstraints gridBagConstraints2; editorPanel.setPreferredSize (new java.awt.Dimension(700, 600)); jPanel1.setLayout (new java.awt.GridBagLayout ()); java.awt.GridBagConstraints gridBagConstraints3; editorPanel1.setLayout (new javax.swing.BoxLayout (editorPanel1, 0)); editorPanel1.setBorder (new javax.swing.border.BevelBorder(1)); gridBagConstraints3 = new java.awt.GridBagConstraints (); gridBagConstraints3.fill = java.awt.GridBagConstraints.BOTH; gridBagConstraints3.weightx = 1.0; gridBagConstraints3.weighty = 1.0; jPanel1.add (editorPanel1, gridBagConstraints3); jScrollBar1.setOrientation (javax.swing.SwingConstants.HORIZONTAL); jScrollBar1.addAdjustmentListener (new java.awt.event.AdjustmentListener () { public void adjustmentValueChanged (java.awt.event.AdjustmentEvent evt) { jScrollBar1AdjustmentValueChanged (evt); } } ); gridBagConstraints3 = new java.awt.GridBagConstraints (); gridBagConstraints3.gridy = 1; gridBagConstraints3.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints3.weightx = 1.0; jPanel1.add (jScrollBar1, gridBagConstraints3); fileLabel1.setText (org.openide.util.NbBundle.getBundle(CvsDiffFrame.class).getString("CvsDiffFrame.fileLabel1.text")); gridBagConstraints3 = new java.awt.GridBagConstraints (); gridBagConstraints3.gridy = 2; gridBagConstraints3.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints3.insets = new java.awt.Insets (2, 0, 0, 0); gridBagConstraints3.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints3.weightx = 1.0; jPanel1.add (fileLabel1, gridBagConstraints3); gridBagConstraints2 = new java.awt.GridBagConstraints (); gridBagConstraints2.fill = java.awt.GridBagConstraints.BOTH; gridBagConstraints2.insets = new java.awt.Insets (0, 0, 0, 1); gridBagConstraints2.weightx = 1.0; gridBagConstraints2.weighty = 1.0; editorPanel.add (jPanel1, gridBagConstraints2); jPanel2.setLayout (new java.awt.GridBagLayout ()); java.awt.GridBagConstraints gridBagConstraints4; editorPanel2.setLayout (new javax.swing.BoxLayout (editorPanel2, 0)); editorPanel2.setBorder (new javax.swing.border.BevelBorder(1)); gridBagConstraints4 = new java.awt.GridBagConstraints (); gridBagConstraints4.fill = java.awt.GridBagConstraints.BOTH; gridBagConstraints4.weightx = 1.0; gridBagConstraints4.weighty = 1.0; jPanel2.add (editorPanel2, gridBagConstraints4); jScrollBar2.setOrientation (javax.swing.SwingConstants.HORIZONTAL); gridBagConstraints4 = new java.awt.GridBagConstraints (); gridBagConstraints4.gridy = 1; gridBagConstraints4.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints4.weightx = 1.0; jPanel2.add (jScrollBar2, gridBagConstraints4); fileLabel2.setText (org.openide.util.NbBundle.getBundle(CvsDiffFrame.class).getString("CvsDiffFrame.fileLabel2.text")); gridBagConstraints4 = new java.awt.GridBagConstraints (); gridBagConstraints4.gridy = 2; gridBagConstraints4.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints4.insets = new java.awt.Insets (2, 0, 0, 0); gridBagConstraints4.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints4.weightx = 1.0; jPanel2.add (fileLabel2, gridBagConstraints4); gridBagConstraints2 = new java.awt.GridBagConstraints (); gridBagConstraints2.fill = java.awt.GridBagConstraints.BOTH; gridBagConstraints2.insets = new java.awt.Insets (0, 1, 0, 0); gridBagConstraints2.weightx = 1.0; gridBagConstraints2.weighty = 1.0; editorPanel.add (jPanel2, gridBagConstraints2); jPanel3.setLayout (new java.awt.GridBagLayout ()); java.awt.GridBagConstraints gridBagConstraints5; gridBagConstraints5 = new java.awt.GridBagConstraints (); gridBagConstraints5.fill = java.awt.GridBagConstraints.VERTICAL; gridBagConstraints5.weighty = 1.0; jPanel3.add (jScrollBar3, gridBagConstraints5); fillSpaceLabel.setText (" "); gridBagConstraints5 = new java.awt.GridBagConstraints (); gridBagConstraints5.gridy = 1; jPanel3.add (fillSpaceLabel, gridBagConstraints5); gridBagConstraints2 = new java.awt.GridBagConstraints (); gridBagConstraints2.fill = java.awt.GridBagConstraints.VERTICAL; gridBagConstraints2.weighty = 1.0; editorPanel.add (jPanel3, gridBagConstraints2); gridBagConstraints1 = new java.awt.GridBagConstraints (); gridBagConstraints1.gridy = 1; gridBagConstraints1.fill = java.awt.GridBagConstraints.BOTH; gridBagConstraints1.insets = new java.awt.Insets (2, 2, 0, 2); gridBagConstraints1.weightx = 1.0; gridBagConstraints1.weighty = 1.0; getContentPane ().add (editorPanel, gridBagConstraints1); labelPanel.setLayout (new java.awt.GridBagLayout ()); java.awt.GridBagConstraints gridBagConstraints6; gridBagConstraints6 = new java.awt.GridBagConstraints (); gridBagConstraints6.gridy = 1; gridBagConstraints6.gridwidth = 2; gridBagConstraints6.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints6.weightx = 1.0; labelPanel.add (fileLabelSeparator, gridBagConstraints6); gridBagConstraints1 = new java.awt.GridBagConstraints (); gridBagConstraints1.gridy = 2; gridBagConstraints1.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints1.insets = new java.awt.Insets (0, 2, 0, 2); gridBagConstraints1.weightx = 1.0; getContentPane ().add (labelPanel, gridBagConstraints1); buttonPanel.setLayout (new java.awt.GridBagLayout ()); java.awt.GridBagConstraints gridBagConstraints7; closeButton.setText (org.openide.util.NbBundle.getBundle(CvsDiffFrame.class).getString("CvsDiffFrame.closeButton.text")); closeButton.addActionListener (new java.awt.event.ActionListener () { public void actionPerformed (java.awt.event.ActionEvent evt) { closeButtonActionPerformed (evt); } } ); gridBagConstraints7 = new java.awt.GridBagConstraints (); gridBagConstraints7.insets = new java.awt.Insets (8, 8, 8, 8); gridBagConstraints7.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints7.weightx = 1.0; buttonPanel.add (closeButton, gridBagConstraints7); gridBagConstraints1 = new java.awt.GridBagConstraints (); gridBagConstraints1.gridy = 3; gridBagConstraints1.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints1.weightx = 1.0; getContentPane ().add (buttonPanel, gridBagConstraints1); }//GEN-END:initComponents private void jScrollBar1AdjustmentValueChanged (java.awt.event.AdjustmentEvent evt) {//GEN-FIRST:event_jScrollBar1AdjustmentValueChanged // Add your handling code here: }//GEN-LAST:event_jScrollBar1AdjustmentValueChanged private void closeButtonActionPerformed (java.awt.event.ActionEvent evt) {//GEN-FIRST:event_closeButtonActionPerformed // Add your handling code here: exitForm(null); }//GEN-LAST:event_closeButtonActionPerformed /** Exit the Application */ private void exitForm(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_exitForm org.netbeans.editor.Settings.setValue(null, org.netbeans.editor.Settings.LINE_NUMBER_VISIBLE, lineNumbersVisible); diff.close(); dispose (); }//GEN-LAST:event_exitForm private void initScrollBars() { D.deb("initScrollBars():"); // NOI18N lineNumbersVisible = (Boolean) org.netbeans.editor.Settings.getValue(null, org.netbeans.editor.Settings.LINE_NUMBER_VISIBLE); jViewport1 = new JViewport(); jViewport1.setView(jEditorPane1); jViewport2 = new JViewport(); jViewport2.setView(jEditorPane2); //JScrollPane jScrollPane1 = new JScrollPane(jEditorPane2); //jScrollPane1.setVerticalScrollBar(jScrollBar3); //jScrollPane1.setHorizontalScrollBar(jScrollBar1); //jScrollPane1.setViewport(jViewport2); jScrollBar3.getModel().addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent e) { java.awt.Point p1 = jViewport1.getViewPosition(); java.awt.Point p2 = jViewport2.getViewPosition(); int value = jScrollBar3.getModel().getValue(); p1.y = value; p2.y = value; jViewport1.setViewPosition(p1); jViewport1.repaint(jViewport1.getViewRect()); jViewport2.setViewPosition(p2); jViewport2.repaint(jViewport2.getViewRect()); } }); jScrollBar1.getModel().addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent e) { java.awt.Point p1 = jViewport1.getViewPosition(); java.awt.Point p2 = jViewport2.getViewPosition(); int value = jScrollBar1.getModel().getValue(); jScrollBar2.getModel().setValue(value); p1.x = value; p2.x = value; jViewport1.setViewPosition(p1); jViewport1.repaint(jViewport1.getViewRect()); jViewport2.setViewPosition(p2); jViewport2.repaint(jViewport2.getViewRect()); } }); jScrollBar2.getModel().addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent e) { java.awt.Point p1 = jViewport1.getViewPosition(); java.awt.Point p2 = jViewport2.getViewPosition(); int value = jScrollBar2.getModel().getValue(); jScrollBar1.getModel().setValue(value); p1.x = value; p2.x = value; jViewport1.setViewPosition(p1); jViewport1.repaint(jViewport1.getViewRect()); jViewport2.setViewPosition(p2); jViewport2.repaint(jViewport2.getViewRect()); } }); editorPanel1.add(jViewport1); editorPanel2.add(jViewport2); jViewport1.addComponentListener(new java.awt.event.ComponentListener () { public void componentHidden(java.awt.event.ComponentEvent evt) {} public void componentMoved(java.awt.event.ComponentEvent evt) {} public void componentResized(java.awt.event.ComponentEvent evt) { setScrollBars(); } public void componentShown(java.awt.event.ComponentEvent evt) { setScrollBars(); } }); jViewport2.addComponentListener(new java.awt.event.ComponentListener () { public void componentHidden(java.awt.event.ComponentEvent evt) {} public void componentMoved(java.awt.event.ComponentEvent evt) {} public void componentResized(java.awt.event.ComponentEvent evt) { setScrollBars(); } public void componentShown(java.awt.event.ComponentEvent evt) { setScrollBars(); } }); } private void setScrollBars() { //D.deb("setScrollBars() called."); // NOI18N int totHeight = jEditorPane1.getSize().height; int value = jEditorPane2.getSize().height; if (value > totHeight) totHeight = value; int totWidth = jEditorPane1.getSize().width; value = jEditorPane2.getSize().width; if (value > totWidth) totWidth = value; int viewHeight = jViewport1.getExtentSize().height; int viewWidth = jViewport1.getExtentSize().width; //D.deb("totHeight = "+totHeight+", totWidth = "+totWidth); // NOI18N //D.deb("viewHeight = "+viewHeight+", viewWidth = "+viewWidth); // NOI18N jScrollBar1.setValues(0, viewWidth, 0, totWidth); jScrollBar1.setBlockIncrement(viewWidth); jScrollBar2.setValues(0, viewWidth, 0, totWidth); jScrollBar2.setBlockIncrement(viewWidth); jScrollBar3.setValues(0, viewHeight, 0, totHeight); jScrollBar3.setBlockIncrement(viewHeight); boolean visibleScroll = jScrollBar1.isVisible(); //D.deb("jScrollBar1.isVisible() = "+visibleScroll); // NOI18N if (visibleScroll != viewWidth < totWidth && editorPanel.isShowing()) { //D.deb("jScrollBar1 setting visibility = "+!visibleScroll); // NOI18N jScrollBar1.setVisible(!visibleScroll); jScrollBar2.setVisible(!visibleScroll); validate(); //editorPanel.repaint(); //jScrollBar1.repaint(); //jScrollBar2.repaint(); } visibleScroll = jScrollBar3.isVisible(); //D.deb("jScrollBar3.isVisible() = "+visibleScroll); // NOI18N if (visibleScroll != viewHeight < totHeight && editorPanel.isShowing()) { //D.deb("jScrollBar3 setting visibility = "+!visibleScroll); // NOI18N jScrollBar3.setVisible(!visibleScroll); validate(); //editorPanel.repaint(); //jScrollBar3.repaint(); } } private String strCharacters(char c, int num) { StringBuffer s = new StringBuffer(); while(num-- > 0) { s.append(c); } return s.toString(); } private void customizeEditor(JEditorPane editor) { EditorKit kit = editor.getEditorKit(); org.netbeans.editor.Settings.setValue(null, org.netbeans.editor.Settings.LINE_NUMBER_VISIBLE, Boolean.FALSE); StyledDocument doc; Document document = editor.getDocument(); try { doc = (StyledDocument) editor.getDocument(); } catch(ClassCastException e) { doc = new DefaultStyledDocument(); try { doc.insertString(0, document.getText(0, document.getLength()), null); } catch (BadLocationException ble) { // leaving the document empty } editor.setDocument(doc); } int lastOffset = doc.getEndPosition().getOffset(); int numLines = org.openide.text.NbDocument.findLineNumber(doc, lastOffset); int numLength = Integer.toString(numLines).length(); SimpleAttributeSet a = new SimpleAttributeSet(); a.addAttribute(StyleConstants.CharacterConstants.Background, java.awt.Color.gray); a.addAttribute(StyleConstants.CharacterConstants.Foreground, java.awt.Color.black); for (int line = 0; line <= numLines; line++) { int offset = org.openide.text.NbDocument.findLineOffset(doc, line); String lineStr = Integer.toString(line+1); if (lineStr.length() < numLength) lineStr = strCharacters(' ', numLength - lineStr.length()) + lineStr; lineStr += " "; // NOI18N try { doc.insertString(offset, lineStr, null); } catch (BadLocationException e) { E.deb("Internal ERROR: "+e.getMessage()); // NOI18N } } //initScrollBars(); setScrollBars(); } public void setFile1(URL url) throws IOException { D.deb("setFile("+url+")"); // NOI18N EditorKit kit = jEditorPane1.getEditorKit(); D.deb("I have kit = "+kit); // NOI18N if (kit == null) throw new IOException("Missing Editor Kit"); // NOI18N Document doc = kit.createDefaultDocument(); try { kit.read(url.openStream(), doc, 0); } catch (javax.swing.text.BadLocationException e) { throw new IOException("Can not locate the beginning of the document."); // NOI18N } kit.install(jEditorPane1); jEditorPane1.setDocument(doc); //jEditorPane1.setPage(url); jEditorPane1.setEditable(false); customizeEditor(jEditorPane1); } public void setFile2(URL url) throws IOException { D.deb("setFile("+url+")"); // NOI18N EditorKit kit = jEditorPane2.getEditorKit(); D.deb("I have kit = "+kit); // NOI18N if (kit == null) throw new IOException("Missing Editor Kit"); // NOI18N Document doc = kit.createDefaultDocument(); try { kit.read(url.openStream(), doc, 0); } catch (javax.swing.text.BadLocationException e) { throw new IOException("Can not locate the beginning of the document."); // NOI18N } kit.install(jEditorPane2); jEditorPane2.setDocument(doc); //jEditorPane2.setPage(url); jEditorPane2.setEditable(false); customizeEditor(jEditorPane2); } public void setFile1Title(String title) { fileLabel1.setText(title); } public void setFile2Title(String title) { fileLabel2.setText(title); } public void setMimeType1(String mime) { jEditorPane1.setContentType(mime); EditorKit kit = JEditorPane.createEditorKitForContentType(mime); D.deb("MIME = "+mime+": I have kit = "+kit); // NOI18N if (kit != null) jEditorPane1.setEditorKit(kit); //Document doc = jEditorPane1.getDocument(); //if (!(doc instanceof StyledDocument)) jEditorPane1.setDocument(new DefaultStyledDocument()); } public void setMimeType2(String mime) { jEditorPane2.setContentType(mime); EditorKit kit = JEditorPane.createEditorKitForContentType(mime); D.deb("MIME = "+mime+": I have kit = "+kit); // NOI18N if (kit != null) jEditorPane2.setEditorKit(kit); //Document doc = jEditorPane2.getDocument(); //if (!(doc instanceof StyledDocument)) jEditorPane2.setDocument(new DefaultStyledDocument()); } public void setDocument1(Document doc) { D.deb("setDocument1("+doc+")"); // NOI18N if (doc != null) { jEditorPane1.setDocument(doc); } } public void setDocument2(Document doc) { D.deb("setDocument2("+doc+")"); // NOI18N if (doc != null) { jEditorPane2.setDocument(doc); } } private void setHighlight(StyledDocument doc, int line1, int line2, java.awt.Color color) { D.deb("setHighlight(): <"+line1+", "+line2+">, color = "+color); // NOI18N //Style s = doc.addStyle("diff-style("+color+"):1500", null); // NOI18N // SimpleAttributeSet attrSet = new SimpleAttributeSet(); // attrSet.addAttribute(StyleConstants.ColorConstants.Background, java.awt.Color.green); //s.addAttribute(StyleConstants.ColorConstants.Background, color); for(int line = line1-1; line < line2; line++) { if (line < 0) continue; int offset = org.openide.text.NbDocument.findLineOffset(doc, line); D.deb("setHighlight(): I got offset = "+offset); // NOI18N if (offset >= 0) { Style s = doc.getLogicalStyle(offset); if (s == null) { D.deb("setHighlight(): logical style is NULL"); // NOI18N s = doc.addStyle("diff-style("+color+"):1500", null); // NOI18N } s.addAttribute(StyleConstants.ColorConstants.Background, color); doc.setLogicalStyle(offset, s); //doc.setParagraphAttributes(offset, 1, s, false); } } //doc.setParagraphAttributes(offset, 100, s, true); } private void unhighlight(StyledDocument doc) { int endOffset = doc.getEndPosition().getOffset(); int endLine = org.openide.text.NbDocument.findLineNumber(doc, endOffset); Style s = doc.addStyle("diff-style(white):1500", null); // NOI18N s.addAttribute(StyleConstants.ColorConstants.Background, java.awt.Color.white); for(int line = 0; line <= endLine; line++) { int offset = org.openide.text.NbDocument.findLineOffset(doc, line); doc.setLogicalStyle(offset, s); } } public void unhighlightAll() { unhighlight((StyledDocument) jEditorPane1.getDocument()); unhighlight((StyledDocument) jEditorPane2.getDocument()); } public void highlightRegion1(int line1, int line2, java.awt.Color color) { D.deb("Highlight region 1"); // NOI18N StyledDocument doc = (StyledDocument) jEditorPane1.getDocument(); setHighlight(doc, line1, line2, color); } public void highlightRegion2(int line1, int line2, java.awt.Color color) { D.deb("Highlight region 2"); // NOI18N StyledDocument doc = (StyledDocument) jEditorPane2.getDocument(); setHighlight(doc, line1, line2, color); } private void addEmptyLines(StyledDocument doc, int line, int numLines) { int lastOffset = doc.getEndPosition().getOffset(); int totLines = org.openide.text.NbDocument.findLineNumber(doc, lastOffset); if (line > totLines) line = totLines; int offset = org.openide.text.NbDocument.findLineOffset(doc, line); //int endOffset = doc.getEndPosition().getOffset(); //if (offset > endOffset) offset = endOffset; String insStr = strCharacters('\n', numLines); try { doc.insertString(offset, insStr, null); } catch (BadLocationException e) { E.deb("Internal ERROR: "+e.getMessage()); // NOI18N } //initScrollBars(); } public void addEmptyLines1(int line, int numLines) { StyledDocument doc = (StyledDocument) jEditorPane1.getDocument(); D.deb("addEmptyLines1: line = "+line+", numLines = "+numLines); // NOI18N addEmptyLines(doc, line, numLines); } public void addEmptyLines2(int line, int numLines) { StyledDocument doc = (StyledDocument) jEditorPane2.getDocument(); D.deb("addEmptyLines2: line = "+line+", numLines = "+numLines); // NOI18N addEmptyLines(doc, line, numLines); } private javax.swing.JViewport jViewport1; private javax.swing.JViewport jViewport2; private javax.swing.JEditorPane jEditorPane1 = new JEditorPane(); private javax.swing.JEditorPane jEditorPane2 = new JEditorPane(); private Boolean lineNumbersVisible = Boolean.FALSE; // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JPanel commandPanel; private javax.swing.JPanel editorPanel; private javax.swing.JPanel jPanel1; private javax.swing.JPanel editorPanel1; private javax.swing.JScrollBar jScrollBar1; private javax.swing.JLabel fileLabel1; private javax.swing.JPanel jPanel2; private javax.swing.JPanel editorPanel2; private javax.swing.JScrollBar jScrollBar2; private javax.swing.JLabel fileLabel2; private javax.swing.JPanel jPanel3; private javax.swing.JScrollBar jScrollBar3; private javax.swing.JLabel fillSpaceLabel; private javax.swing.JPanel labelPanel; private javax.swing.JSeparator fileLabelSeparator; private javax.swing.JPanel buttonPanel; private javax.swing.JButton closeButton; // End of variables declaration//GEN-END:variables } /* * Log * 17 Gandalf-post-FCS1.15.2.0 3/23/00 Martin Entlicher NOI18N * 16 Gandalf 1.15 1/15/00 Ian Formanek NOI18N * 15 Gandalf 1.14 1/11/00 Jesse Glick Context help. * 14 Gandalf 1.13 1/6/00 Martin Entlicher * 13 Gandalf 1.12 1/6/00 Martin Entlicher Insets between * components changed * 12 Gandalf 1.11 12/29/99 Martin Entlicher * 11 Gandalf 1.10 11/27/99 Patrik Knakal * 10 Gandalf 1.9 11/23/99 Martin Entlicher * 9 Gandalf 1.8 11/9/99 Martin Entlicher * 8 Gandalf 1.7 11/9/99 Martin Entlicher * 7 Gandalf 1.6 10/27/99 Martin Entlicher * 6 Gandalf 1.5 10/26/99 Martin Entlicher * 5 Gandalf 1.4 10/26/99 Martin Entlicher * 4 Gandalf 1.3 10/25/99 Pavel Buzek * 3 Gandalf 1.2 10/23/99 Ian Formanek NO SEMANTIC CHANGE - Sun * Microsystems Copyright in File Comment * 2 Gandalf 1.1 10/13/99 Martin Entlicher * 1 Gandalf 1.0 10/7/99 Martin Entlicher initial revision * $ */